//
// Created by Kame.Liang on 2021/9/5.
//

#include "Realizetype.h"
Realizetype::Realizetype()
{
    std::cout<<"construct func"<<std::endl;
}

Realizetype::Realizetype(Realizetype&& src)
{
    std::cout<<"move construct func"<<std::endl;
    this->m_objectName = src.m_objectName;
}

Realizetype::Realizetype(const Realizetype& src)
{
    std::cout<<"copy construct func"<<std::endl;
    this->m_objectName = src.m_objectName;
}

void Realizetype::operator=(const Realizetype& src)
{
    std::cout<<"assign construct func"<<std::endl;
    this->m_objectName = src.m_objectName;
}

Realizetype::~Realizetype()
{

}

IPrototype* Realizetype::clone()
{
    std::cout<<"clone func"<<std::endl;
    return new (std::nothrow)Realizetype(*this);;
}

void Realizetype::setObjectName(std::string name){
    m_objectName = name;
}

const std::string Realizetype::getObjectName()
{
    return m_objectName;
}